Unit controller with integral full-featured human-machine interface

ABSTRACT

An integrated unit controller/human-machine interface is disclosed which incorporates high-speed redundant control, sequence of events, supervisory control and data acquisition, alarm handling, trending &amp; historian, process graphics and “open” communications in a compact form factor enclosure (the front panel less than 5×6 inches). The unit controller is composed of two primary hardware elements: the controller module (single or redundant) and the palm type computers (P/PC)-based human-machine interface (HMI) with touch screen. The controller covers a wide span of applications, from single process unit control to networked multi-unit management.

BACKGROUND

[0001] 1. Field of the Invention

[0002] The present invention relates to controllers and processmonitors, and more particularly to electronic controllers and processmonitors.

[0003] 2 Prior Art

[0004] Industrial control and monitoring systems have taken many formsin the prior art. In the past, the advanced control functions,redundancy and the human-machine interface (HMI) portions of a controlsystem have been functionally segregated and physically separated.Furthermore, if a process controller included an integral HMI, it waslimited to a fixed, non-intelligent (without PC, no windows-type) frontpanel. This has limited the operator's local process interface abilitysince complete information was available only via one or more segregatedHMI. Also, unit control applications have been restricted becausestand-alone process controllers did not integrate advanced controlfunctions nor did they incorporate redundancy/fault-tolerance.

[0005] It is an object of the present invention to have a control systemthat will integrate the functionality of advanced control, redundancyand windows-type HMI into a comprehensive process unit controller.

[0006] It is a further object of the present invention to combine a unitcontroller with a user-friendly operator interface and with processoptimization capability and fault-tolerance at the distributed controllevel, where it has the most benefit to the end-user.

[0007] It is an additional object of the present invention to have aprocess unit controller whereby a user could take advantage of thelatest state-of-the-art of process control (including proprietaryoptimization functions) and display features (animated-dynamic graphics,trend/historian, alarms/events) in an “all-in-one” package that has acompact form factor.

SUMMARY OF THE INVENTION

[0008] A process controller is disclosed that integrates advancedcontrol and redundancy with a palm-type PC (P/PC) Windows-typehuman-machine interface (HMI).

[0009] In the preferred embodiment of the invention, the inventioncombines optimized process control and visualization with easy accessover commercial networks such as Ethernet or the Internet. The inventionis comprised of a control system of elements including, but not limitedto combined I/O-Control-Communication board(s), the palm-type computer(P/PC) operator interface and the Control-Visualization-Communicationapplication programs. The elements are merged into a 1/8 DIN (138×68 mm)form factor that is common for industrial analog controllers. This newconcept of unit control offers the following unique advantages:

[0010] Flexibility—Advanced control and optimization in a stand-alonecompact package.

[0011] Fault Tolerance—1:1 redundancy to assure maximum safety andavailability.

[0012] Reliability—Redundancy includes μP, communication and I/O on asingle board

[0013] Scalability—Fits virtually any size of Unit application.

[0014] Built-in Graphical Interface—Provides instantaneous feedback tothe operator.

[0015] Integrated Datalogging and Trends—Eliminates the need forexternal recorders/loggers.

[0016] SER—1 ms resolution between time-stamped events for sequence ofevents recording capability.

[0017] Integral Connectivity—Ethernet OPC and Internet communicationconnect Operation, Maintenance and Management.

[0018] 200 Volt Common-Mode Rejection—Provides high noise immunity forprocess inputs.

[0019] Wiring Simplicity—All wiring originates from, or terminates at,the same location at the rear of the controller.

[0020] Universal Control Board—Integrates intelligence, I/O andcommunication on one board. Minimizes Spares and Space.

[0021] Cost Savings—All required hardware and software is containedwithin a single compact package.

[0022] The present invention further provides “open” access through OPC(Ole for Process Control) to information and data in the processcontroller with both high-speed (Ethernet) and Internet communicationinterfaces included. It can also import and export real-time data usingXML format. This brings XML support to the unit control level, allowingfor dynamic and automated data exchange between applications at alllevels—from unit control to corporate asset management.

[0023] Other features and advantages of the invention, which are noveland non-obvious, will be apparent from the following detaileddescription in conjunction with the accompanying illustrations in whichis shown a preferred embodiment of the invention.

DESCRIPTION OF THE DRAWINGS

[0024] For a further understanding of the nature and objects of thepresent invention, reference should be had to the following drawings inwhich like parts are given like reference numerals and wherein:

[0025]FIG. 1 is an overview block diagram of the preferred embodiment ofthe present invention, illustrating the general function of the basicunit controller elements;

[0026]FIG. 2 is a side, rear and front view dimensional drawingindicating the compact size of the inner controller and its preferredembodiment of the present invention;

[0027]FIG. 3 is an overview diagram of the unit controller withintegrated human-machine interface (P/PC-based HMI) illustrating therelationship of the major components and the links between them,primarily hardware architecture of the preferred embodiment of thepresent invention;

[0028]FIG. 4 is a schematic illustrating communications networks;

[0029]FIG. 5 shows a typical compressor and turbine unit control;

[0030]FIG. 6 shows a typical enterprise-wide automation with multipleunit controllers;

[0031]FIG. 7 shows an illustration of a human machine interface (HMI);

[0032]FIG. 8 shows a screen capture of graphics configuration display;

[0033]FIG. 9 shows a typical set of pre-configured compressor displays;

[0034]FIG. 10 shows a trend and a trend history display;

[0035]FIG. 11 shows an alert summary and an alarm history display;

[0036]FIG. 12 shows the text dialog box for the OPC Server interface

[0037]FIG. 13 shows the Configuration File Interface

[0038]FIG. 14 shows the unit controller HMI Internet Toolkit

[0039]FIG. 15 shows typical wireless data communications

[0040]FIG. 16 shows a single stage anti-surge scheme selection/displayand data entry;

[0041]FIG. 17 shows an anti-surge algorithms selection help, singlestage compressor;

[0042]FIG. 18 shows base condition data entry, single stage compressor;

[0043]FIG. 19 shows a multi-stage anti-surge scheme selection/display;

[0044]FIG. 20 shows compressor performance curve display/entry;

[0045]FIG. 21 shows an anti-surge algorithm and application display;

[0046]FIG. 22 displays Hp vs Q² (polytropic head versus squaredvolumetric flow) section table display;

[0047]FIG. 23 shows anti-surge parameter table display;

[0048]FIG. 24 shows tools for flow calculation; and

[0049]FIG. 25 shows polynomial conversion.

DETAILED DESCRIPTION OF THE PRESENT INVENTION

[0050] General

[0051] Although this invention is susceptible to embodiments of severaldifferent forms, a preferred embodiment will be described andillustrated in details herein. The present disclosure exemplifies theprinciples of the invention and is not to be considered a limit to thebroader aspects of the invention to the particular embodiment asdescribed.

[0052] As shown in FIGS. 1 and 2, unit controller 10 includes a fieldtermination module interface (TMI) 15. TMI 15 includes a terminationpanel 20 mounted at one end of chassis 25. The other end of chassis 25has mounted on it a full-featured palm-type PC (P/PC) graphical operatorinterface (HMI) 30. P/PC 30 has typical graphic capability 35. Inbetween the P/PC 30 and the field termination module interface 15, thereis mounted an autonomous control module 40. Autonomous control module 40may be a single or redundant unit with intelligence (microprocessor andmemory) as well as communications and inputs and outputs, thecommunications and inputs and outputs interfacing directly with the TMI15. These inputs and outputs are connected (not shown) to the fieldterminals 20. The autonomous control module 40 further includes memory,which incorporates a large library of special functions and functionblocks to provide for advance control, SOE, fall-back algorithms,oscillation detection/control, expression vectors, load allocation,dynamic lookup table, constraints and the like.

[0053] The unit controller 10 is applicable to compressors, reactors,columns, boilers and many other process units. It can also automate thesurrounding process and utilities of the major process equipment groups.The unit controller 10 not only enhances established process unitcontrol, but also incorporates new concepts that offer new benefits tovirtually any automation application.

[0054] Hardware Architecture:

[0055] As shown in FIG. 3, the single board control modules 40 areconnected to the plant's/unit's field instruments (not shown) throughits termination module interface (TMI) 15 panel. This interfaceoptionally accommodates redundant control modules 40′, 40″, to providehigh fault tolerance. The control modules 40 include the I/O signalconditioning/processing 45, the intelligence (microprocessors andmemory) 50, 55 and the communications 60, 61, 62. The control modulesrun identical operating systems and application firmware. Each module40′, 40″, is also responsible for the communications (Ethernet 60,Modbus 61 and Comm 1 62) network function. The PLD 99 (programmablelogic device) determines which module 40′, 40″, is in control.

[0056] An embedded palm-type PC (P/PC) 30 is provided which communicatesvia OPC 70 (Ethernet 60 or RS 232/485/Comm 1, 62) with the controlmodule(s) 40 and is used to provide the operator interface 41, includinga color LCD. The LCD panel 41, displays information and menus andincorporates a touch screen 80 for user inputs. With its color display(back-lit TFT) 41 and CPU 88 (including memory 77), the operatorinterface 41 has the flexibility to provide a wide range ofpre-formatted displays and a clean interaction with all operationapplications. In addition, a CompactFlash header supports modem 90interfaces for Internet connection (solid or wireless) or memoryexpansion. Also, an additional USB interface port 95 provides a link toUSB devices.

[0057] Controller Configuration Approach

[0058] The functions of controller 40 can be freely combined. Anillustrative listing of the functions is set out in Table 1 below. Theuser may connect any function to any other function within the same orother unit controllers 10 within a system. The capability to select fromover one-hundred algorithms makes the unit controller 10 uniquelyqualified to adapt the controls to special process/utility applicationsand to include controls of unit controllers of surroundingequipment/utilities (not shown).

[0059] Pre-configured Strategies

[0060] The unit controller 10 can be provided with a variety of controlstrategies pre-configured by the factory. Of course, since thesestrategies are composed of standard function blocks (Table 1), they canbe changed as required in the field (authorized personnel only; userpassword/key is required) TABLE 1 Controller Function LibraryINTERNAL/VIRTUAL DISCRETE DISCRETE INPUT MULTI-STATE DISCRETE LET Loads(inserts) the specified Tag, Label or Constant us the loop MSV AI LOADLoads value of pre-configured analog input Tag TEMP COMP Performstemperature compensation PRESS COMP Performs pressure compensation INPUTSIGNAL SWITCH Auto selection for dual transmitter range. ANALOG/LOGICServes us analog to logic converter CONSTRAINT Provides SetpointOptimization PID BATCH (Sub-Function) PID algorithm. PID RATIO/BIAS(Sub-Function) PID AUTO RATIO (Sub-Function) PID AUTO BIAS(Sub-Function) PID CASCADE (Sub-Function) PID GAP (Sub-Function) SET PIDInserts specified parameters into PID equation. LOAD PID Load PIDparameter as MSV MULTIPLY DIVIDE ADD SUBTRACT SQUARE ROOT CALCULATORPerforms specified calculation ABSOLUTE Takes absolute value of MSVLOGARITHM EXPONENTIAL SEQ CONTROL Determines the number and duration ofstates in sequence control INTERLOCK ALARMS Signifies an alarm conditionin Seq Control function DISCRETE STATUS CONTROL Changes the status ofone or more discretes based on the sequence state SEQUENCE Generatesramp and hold for Sequence control function ARRAY Array (Table) ofValues MSV CH-D MSV change based on discrete states MSV CH-A MSV changebased on Analog Value MINIMUM SELECTOR Selects the minimum or themaximum MEDIAN & HI/LO SELECTOR Inserts the medium, high or low as MSVLEAD/LAG Provides first order lead/lag algorithm DEAD TIME Provides forMSV delay algorithm VELOCITY LIMIT Limits the rate of change of the MSVTOTALIZER Integrator including Cut-off level, time base, etc UNCOND AOMSV is directly linked to analog output AO LOAD Loads pre-configured AOto analog output DISCRETE OUTPUT DEF PULSER Pulses a Discrete OutputGOTO A Step sequence change based on analog value GOTO AT Timed stepsequence change based on analog value GOTO D Step sequence change basedon discrete input GOTO DT Step sequence change based on timed discreteinput status GOTO Unconditional step sequence change GOTO-M Stepsequence change based on PID mode DCH-M Discrete status change based onPID mode O/C CONTROL Open-Close (on/off, start/stop, etc) control withfeedback alarm. Valve with limit switches BOOLEAN EXP Boolean expression(logic calculator) AND OR INVERT LATCH TIME DELAY D STAT Discrete statuschange RVD ACCESS Restricted Virtual Discrete Access EVENT COUNTERCounts and totalizes discrete status changes START/STOP MOTOR CONTROLStart-stop switch with pulse and interlock feature RESET VD Resets aninternal/virtual discrete DISCR STATUS BASED ON MSV M INTERLOCK Modeselected interlock MCH-D PID mode change based on discrete status OSCMONITOR Oscillation amplitude monitor LOOK UP TABLE Providesinterpolation for up to 98 X & Y values ALARM MANAGEMENT Manages alarmsby Group or single Tag COMM DO Peer-to-peer communication alarm discreteoutput TIMER/STOPWATCH AVERAGE CONTROLLER/RTU CLOCK Accesses internalclock IF THEN ANALOG Functions as an “If-then-else” algorithm based onanalog value comparison IF THEN DISCRETE Functions as an “If-then-else”algorithm based on discrete status ZERO LIMIT Output is zero if thereference value is negative EXTEND PULSE Sustains value of a booleanvariable for a defined length MAXIMUM VALUE MEAN VALUE MEDIAN VALUE RATEOF CHANGE Computes the derivative of the value DEADBAND Checks the value(x) against low/high limits EXPRESSION VECTOR Selects values orexpression based on an index

[0061] Communication Networks:

[0062]FIG. 4 illustrates the integrated unit controller's “open”connectivity. To be able to respond to alarms and diagnosticsinformation/recommendation anywhere on the corporate Intranet (Ethernet)or on the Internet is unique for a unit control system.

[0063] The unit controller 10 combines Unit Control with Ethernet LAN(Local Area Network) 60 and modem 90 communications. It provides thecommunication tools required to build a complete advanced automationsolution. The operator can use the unit controller's 10 integratednetworking, then visualize and deliver the information to authorizedusers with Ethernet 60 and the Internet (hardwired 120 or wireless 125).With flexible connectivity between the control layer 40 and the CentralHMI's 130-Corporate HMI'S 135-Mobile HMI's 140, the automation hierarchyis simplified. Further, the unit controller's 40 control boardincorporates Modbus (serial 232/485) 61 communications.

[0064] The Windows CE-based Operator Interface of the unit controller 40includes communications services such as COM (component-object module),Web server, XML import/export, and network routing. The user caninteract with the process equipment and plant/utility (not shown) viastandard Intranet/Internet technology through a Web-Browser.

[0065] Application Scalability

[0066]FIGS. 5 & 6 show the unit control 10 system's capabilities andflexibility to match the user's application—from single unit control toenterprise-wide automation projects. The modular architecture makes iteasy to expand the system.

[0067] The unit control system opens up a large sphere of plantoperation to automation. Its global environment for information andcontrol provides not only total access and advanced processing withinthe automation system, but can also incorporate a central interface(control room 130), plant asset planning (corporate 135) and remotediagnosis (mobile 140). The unit control systems scalability permits theuser to start “small” but allows for easy expansion to a total plantmanagement system. System I/O (input/output) point capacity is up to20000.

[0068] P/PC Human-Machine Interface (HMI)

[0069]FIG. 7 shows an illustration of an HMI graphic display. To beeffective in a small (P/PC size) footprint, the operator interface 30must be ergonomically pleasing and comfortable to the user. While thismay seem to be a fairly easy goal to achieve with today's well acceptedMenu Bar interfaces, a number of elements come into play with a processcontroller-based environment that must be brought into properrelationship with the operator—elements such as animation, instant alarmaccess, prevention of accidental value entry, value setting accuracy,etc.

[0070] The unit controller display architecture is flexible, yet cleanand simple in appearance and interacts with every application in thesame manner. The windows, menus, etc. are consistent looking andbehaving.

[0071] The prompting and pre-formatted type display hides the complexwindow access procedure and simplifies operation to a point where avirtually untrained person can easily navigate between displays. Itprovides an intuitive means of interacting with the process.

[0072] The touch panel is the primary device for operator interactionwith the screen. Direct touch or a pen (stylus) are used for contactwith the screen.

[0073] Operator Interface Software Architecture—

[0074] HMI Process Display Formats

[0075] The HMI 30 provides three general applications . . .

[0076] Graphics 150: Illustrates the interface to the process inface-plate and graphical format

[0077] Alarm Summary: Provides traditional alarming and acknowledgmentcapabilities

[0078] Trend/History: Replays real-time and historical data in trendchart format

[0079] Overview of HMI Features

[0080] The unit controller 40 incorporates a P/PC based full-featuredhuman-machine interface—HMI 30. It is menu-driven and requires noprogramming knowledge.

[0081] HMI Microcontroller—

[0082] Intel StrongARM microprocessor 88

[0083] 32 MB Flash Memory 77

[0084] 32 MB SDRAM Memory 77

[0085] Integrated LCD controller 41

[0086] Ethernet and USB connectivity 70, 95

[0087] CompactFlash slot 90

[0088] Card Speaker

[0089] Database Management—

[0090] Object oriented database

[0091] Fill-in-the-blank definitions

[0092] Data accessible system wide

[0093] Standard Environment—

[0094] Based on Microsoft's DNA architecture

[0095] Industry standard operating system-CE

[0096] Distributed COM

[0097] XML technology

[0098] Multi-User—

[0099] True multi-user capabilities

[0100] Supports multiple P/PC's, operator/engineering/managementworkstations

[0101] Networkable on popular local and wide area nets

[0102] Web enabled to serve HTML pages over the Web with real-time data

[0103] Allows sub-division of process responsibilities to differentusers

[0104] Business Interoperation—

[0105] Unit control can be integrated into a total business system.

[0106] Integrates Unit Control and Business Asset technology

[0107] Imports and exports real-time data and reports in XML format

[0108] Protected data ownership and security

[0109] OPC Client/Server—

[0110] Enables communication with control modules

[0111] Open systems OPC link

[0112] Server identifier

[0113] Configurable data update rate

[0114] Notification on exception bases (deadband setting)

[0115] Standard GUI—

[0116] Based on WEB Studio, the graphical user interface offers objectoriented easy to use graphics.

[0117] User-defined and pre-defined graphic displays. Used to monitorand control a unit process.

[0118] Pre-defined displays include:

[0119] Home; Proc. Graphics, Face-Plates; AIN/AO; DIN/DO; Loop Tuning;Interlocks; Alarm Summary, Alert Summary; Trend; Historical Trend;Diagnostics;

[0120] Scripting language including math expressions, statistic andlogical functions, module activation functions, etc.

[0121] Build hierarchies and networks of displays

[0122] Displays real-time & historical data

[0123] Translation Tool for multi-language operation

[0124] Time-Scheduled Tasks—

[0125] Provides time-based user defined operations

[0126] Event types: Reports, Recipes, Calculations, data logs,match/logic functions or any program

[0127] Scheduling intervals from seconds to years

[0128] Quickly defined and interactive

[0129] Schedules application programs

[0130] Alarms and Alerts Processing—

[0131] Provides comprehensive alarm reporting

[0132] SOE (sequence of events) capabilities

[0133] Individual or multiple alarm acknowledgements

[0134] Remote Ack (acknowledge)

[0135] User definable priorities

[0136] User definable status colors (start, ack, norm)

[0137] Archive storage and call back

[0138] Real-Time and Historical Trending—

[0139] All data base points may be selected for trending

[0140] Selectable plot scales, time spans, colors, grid sizes

[0141] Up to 8 plots per window

[0142] Selectable curve type (X/t, X-Y)

[0143] Save On Trigger or Save on Tag Change selection

[0144] Archive storage and call back

[0145] Recipes and Reports—

[0146] Facilitates assessment of unit performance

[0147] Easy creation of reports (without programming tool)

[0148] Load recipes and retrieve values in XML format

[0149] Graphic Display Configuration

[0150] Graphics provide an object oriented human-machine interface (HMI)30 applications for the unit controller 40.

[0151]FIG. 8 shows a screen capture of a graphic display configurationon a workstation PC. The graphics software 160 of the unit controllerHMI 30 is a runtime-only version of the workstation PC graphics. Thesoftware is provided by IduSoft. All configurations of graphic displaysare made using a workstation PC, such as central HMI 130, and thendownloaded to the HMI 30 of the unit controller. Once in run-time mode,the user is able to execute all runtime functional dynamics that havebeen added/defined during configuration.

[0152] HMI 30 Visualization/Control

[0153] A complete set of drawing and animation tools is furnished. Onecan create graphic objects and build displays using any combination ofdrawing tools (boxes, lines, circles, text, etc.); save the graphicobjects in a library, add expressions and animation.

[0154] Universal OPC (Ole for Process Control) Connectivity—

[0155] The graphical displays are connected to the unit controllercontrol board(s) 40 using the OPC protocol to access the dynamicallyupdated real-time data and alarm points.

[0156] Dynamic Object Animation—

[0157] Considering the small (P/PC size) footprint, it is important toprovide high-performance animation effects based on dynamic real-timelinks. The dynamic action tool offers rotation, animation, analog color,flash, etc.

[0158] HIMI Example—Centrifugal Compressor

[0159]FIG. 9 illustrates examples of a Compressor Unit HMI 30 for atypical centrifugal machine.

[0160] The HMI is designed to facilitate operation at all levels. Itpermits simplified access to the unit, provides a logical displayhierarchy and a choice of navigation for interaction with the process.

[0161] From operator displays to maintenance screens to engineeringdisplays, the unit controller HMI covers the full interface spectrum.The color display represents an HMI with full DCS/SCADA capabilities. Itprovides a complete “window” on the process by which one canoperate/control, maintain and manage the process unit.

[0162] Trend/Historian Display

[0163] Behind the Trend displays 210 and 211 of FIG. 10 is real-timetrend reporting and analysis tool.

[0164] Trend capability provides simultaneous viewing of real-time andhistorical data. Trend display type is in the popular Strip ChartRecorder format.

[0165] Historical Replay

[0166] The Trend History display provides for a comprehensive means ofviewing process and calculated data over periods of time. Historicaldata can be retrieved with convenient date/time selection buttons.

[0167] Alarm & Event Handling

[0168]FIG. 11 shows an Alert Summary and an Alarm History display. Theability to display and meaningful disseminate alarm/event data is vital.Alarm and event detection and processing takes place in the controlmodule 40. The alarm and event notification at the operator interface 30includes summary displays (Alarm and Event Summary 220) and historydisplays (alarm and Event History 221). Audible annunciation is alsoprovided.

[0169] Integral Communication Networks

[0170] The design of the communication networks for the unit controller10 includes several levels to provide the best information distribution.A multi-tiered strategy has been taken in delivering informationeverywhere by using much of the new technology now available.

[0171] Communication Services

[0172] The integral unit controller 10 communication architectureincorporates the following networks . . .

[0173] Ethernet IEEE 802.3 Carrier. The OPC Server provides for industrystandard protocol access.

[0174] Serial MODBUS Interface—RS-232 or RS-485. Can be configured asmaster or slave.

[0175] Internet Tools. E-Mail, Web Publishing and XML support (requiresCompactFlash-type modem).

[0176] Wireless Networking. Use of wireless Internet access and wirelessLAN technology.

[0177] All of the networks are based on industry standard communication,providing for an “open” system architecture.

[0178] Ethernet

[0179] Ethernet as specified in IEEE 802.3 and used in the unitcontroller 10 operates at 10 Mb/s and is a multinode connection topologythat handles up to 1,024 nodes on twisted pair, fiber optic, or coax.

[0180] Twisted-Pair Ethernet 10Base-T is very economical and usestelephone wiring and standard RJ-45 connectors. This type of Ethernet iswired in a star configuration and requires a hub or switch

[0181] Fiber Optic Ethernet 10Base-T is used to extend Ethernetsegments.

[0182] Fast Ethernet (100Base-TX) is essentially the same as theoriginal Ethernet except the transfer rates are 10 times faster at 100Mb/s. Another differences is that Fast Ethernet includes a mechanism forauto-negotiating of the media speed.

[0183] Ethernet, the de facto standard—layered with industry-standardprotocols such as OLE for process control (OPC)—makes Ethernet-basedsolutions very attractive and cost effective for open connectivity andinteroperability between process control and business applications

[0184] OPC (OLE for Process Control)

[0185] The OPC specification documents a set of standard COM (ComponentObject Module) interfaces defined standard objects, methods, andproperties. DCOM enables an additional level of functionality for OPC,so a client application can use objects located on other networkedcomputers. Therefore, an HMI or DCS/SCADA software package can exchangereal-time data with the unit controller's 10 OPC server running on anycomputer on the network. The OPC specification also defines a standardmechanism for OPC client applications to browse OPC servers and toaccess named data items contained in OPC servers.

[0186] OPC Server Interface—

[0187] The OPC server communicates with the unit controllers 10 throughthe Ethernet adapter. A text dialog box (FIG. 12) displays the ID(Ethernet Address) of the adapter used for communications with thecontrollers. This field cannot be changed during run-time. If thecomputer has more than one adapter, and the controllers 10 are on anetwork which is connected to an adapter which does not have the ID ofzero (0), then one will need to configure the OPC server to point to thecorrect adapter ID. This can be done by using the registry and changingthe adapter ID key in the OPC Server group. This change in Adapter IDshould be effected only when the OPC Server is not running.

[0188] Configuration File Interface

[0189]FIG. 13 shows the Configuration File Interface. This controlallows a user to interact with the unit controllers 10. Most of theinteraction with the controllers tends to be related to theconfiguration files for the controllers. The OPC server allows a user todownload, compile, execute and delete configuration files on thecontrollers. It is assumed that the user has created a configurationfile on the user's PC using a text editor. Clicking on the Configurationbutton (FIG. 12) brings up the File Interface window.

[0190] Most of the functions supported by the window areself-explanatory. The OPC server will provide a list of controllers inthe list box. This list will contain only those controllers which haveresponded to queries from the OPC server or have sent in their heartbeatmessage to the OPC server at some time. Just because a controller isdisplayed in the list, does not imply that the OPC server will be ableto communicate with it. The controller could have gone off-line after ithad sent some heartbeat (on-line diagnostic signal) messages to the OPCserver. In such a case, an interaction with that controller will timeoutand the OPC server will display a time-out error in the status box onthe Configuration File Interface dialog box.

[0191] Modbus Interface—RS-232 or RS-485

[0192] The MODBUS communication link permits the unit controller 10 toconverse with DCS/SCADA systems from other vendors or to interface datafrom a variety of PLCs. The unit controller can act as either a MODBUSmaster or slave. In its master (supervisory) mode the unit controllercan accommodate up to 2500 PLC points.

[0193] The MODBUS protocol provides for multiple devices to share acommon communication link. To prevent simultaneous transmissions on theBUS only one device may transmit data at a time.

[0194] Internet Tools

[0195] The unit controller Human-Machine Interface (HMI) 30 can beprovided with built-in Internet functionality (requires CompactFlashtype modem) for publishing documents and replicating images of the frontpanel (HMI) displays. The HMI environment is based on Microsoft's DNAarchitecture, which includes COM, DCOM and XML technology. The user canbuild his/her own Web server to make the application automaticallyupdate as animated virtual instruments across the Web, using client-pullor server-push update methods. From the built-in server, one can respondto several clients connected to the program.

[0196] Security level provisions are incorporated to limit access to theunit controller displays and data. Access can be controlled based onuser name and password, or based on a valid IP address.

[0197] The Internet component of the unit controller HMI 30 alsoincludes e-mail capabilities. Using these features, e-mails can be sentautomatically when alarms occur.

[0198] Wireless Data Communications

[0199]FIG. 15 shows typical wireless communications. A number oftechnology alternatives—both licensed and license free—are available tomeet the growing demand for wireless data communications in industrialautomation applications. Spread spectrum radio systems are increasinglyaccepted for installations that otherwise would have used microwave ordial-up/leased line solutions.

[0200] The radio modem converts the serial RS-232/485 unit controller 10system into a wireless information network by transparently convertingunit controller commands and data into wireless, spread spectrumcommunications. Modems are available that transmit data at rates of upto 115 kilobites per second (115 Kbps).

[0201] A wireless radio system includes one master modem connected to aPC Serial COM port. At each unit controller location, a slave radiomodem connects to the unit controller module Comm1 port 62. Repeaterradio modems can be used to increase the communication distance or toachieve line of sight by routing the communications signals aroundobstructions.

[0202] Control Strategy Flexibility, I/O Handling, Fast Loop Executionand SOE—All Incorporated on the Single-Board Control Module

[0203] The control system uses a series of linked blocks to providespecial control strategy flexibility and fast loop execution. Controlstrategies, calculations, etc., are configured by inserting the requiredpreprogrammed functions one after the other in a building-block fashion.The blocks (functions) are automatically linked (“softwired”) by theconfiguration program to form complete pre-programmed loops andstrategies. Linked blocks can reside in a single unit controller 10 orin different units. The extensive tracking capability of the systemensures bumpless and balanceless data transfer with the result that thecontrol and the process are not disturbed during control mode changes(man-auto-cas), under feedforward and feedback transfer or duringfall-back strategy switching.

[0204] Analog Input Characterization

[0205] The analog input blocks accept the analog field inputs andprepare the data for use by the controller's loop/strategy firmware.

[0206] Analog inputs are sampled as part of the loop execution (inputconversion scheduling is based upon loop scan time). The analog inputfunctions convert (scale) the raw input data to engineering units. Theyperform signal conditioning such as square root, thermocouple/RTDlinearization and input filtering. The result is a conditioned inputvalue in engineering units.

[0207] The output of the conditioned input value can be linkedthroughout the control system (in the same controller unit 10 or toother units).

[0208] Discrete (Contact) Input Characterization

[0209] The discrete (on-off contact) input functions accept a contactfield input and prepare the status data for use by the controllerloop/strategy firmware.

[0210] Contact inputs are sampled at a high frequency and can beconditioned with filtering (debounce). Inputs are time-stamped to a one(1) millisecond resolution in order to provide first-out sequence ofevents detection (SOE).

[0211] The output of the conditioned discrete input status can be linkedthroughout the control system (in the same controller unit or to otherunits).

[0212] Basic Control Strategy Execution Tasks

[0213] Although the controller 10 is designed to meet several types ofcontrol—Continuous, Batch, Startup/Shutdown Sequence, Logic andSCADA—all types execute the same basic control loop strategy tasks.

[0214] Loop/Strategy Configuration

[0215] Loops or strategies are pre-configured by simply inserting intothe loop blocks the functions selected to implement the chosen controlstrategy. As discussed previously, any input or inputs may be referenced(configured) in any of the loops as many times as required. Functionlabel references enable the user to access the output of any function(loop block) in the same controller or in other controllers.

[0216] Main Signal Flow

[0217] During loop execution, data “loaded” or “entered” into a block isprocessed by the function configured in that block, or in other words,input signal links and any other data are accessed during blockexecution. The processed data is presented as the function output and isnormally passed to the following block to be processed by the nextfunction.

[0218] The data value may be altered by each function and thereforechanges as loop execution proceeds through the blocks. The value isreplaced by a new value if a link function is inserted in one of theloop blocks.

[0219] The signal value of analog data is in engineering units, thusallowing development of loop/strategy configuration in real engineeringvalues.

[0220] Loop/Strategy Execution Cycle Time

[0221] All loops are normally updated ten times per second (to allowstandard analog/discrete filtering). However, the user may choose adifferent update frequency for each loop/strategy, if other than thestandard update time of 100 milliseconds is desired. A loop/Strategyscan time in the range from ten (10) milliseconds to 300 seconds may beselected for each loop by simple operating data entry.

[0222] With a loop/strategy execution time capability of 10 milliseconds(100 times per second) the controller can handle high speed controlapplications such as: Interlock executions, turbine governorpositioning, liquid pipeline response algorithms, compressor surgecontrol, reactor control, etc.

[0223] Control Loop/Strategy Output Section

[0224] The outputs of a loop are normally sent to the on-board digitalto analog converter. However, a configuration may be such that a loop isused without a direct output or two or more loops may share the sameoutput.

[0225] The control loop/strategy output sections are part of the loopand usually perform three general functions . . .

[0226] Tracking: Tracking is normally executed to provide balancedoutput in open-loop conditions for mode transfer and control strategyswitching. The tracking scheme can be effective even when it involvesmultiple control loops/strategies.

[0227] Analog Output Functions: The primary purpose of the analog outputfunctions is to prepare a specific analog value for output to the field.An output data register is provided for storing the analog output value.Output limits, rate of change, verification, direct/reverse action etc.are incorporated into the analog output functions.

[0228] Discrete Output Functions: The primary purpose of the discreteoutput functions is to prepare a specific on/off state for output to thefield. Of course, the discrete output data registers (same as for analogoutput registers) can also be accessed by loop/strategy functions.

[0229] On-Line Configuration Editing

[0230] The controller configuration was designed from the beginning tooffer safeguards against unauthorized changes. High security is providedby requiring users to enter access levels and passwords when performingconfiguration or database changes.

[0231] Although basic configuration changes are seldom required forpre-configured control applications, field experience has shown thatduring the lifetime of a process plant application, controllerflexibility is essential in order to adapt to revisedoperating/equipment conditions and to optimize energy consumption andthroughput.

[0232] The unit controller configuration concept permits full on-linecontrol strategy editing by an authorized user, not just limitingformatting of function blocks of the common, less flexible systems. Withthis feature, the user can add or delete functions, make changes to thecontrol strategies and interlink strategies/loops any time, providedthat security authorization has been obtained. Linkage between controlloops and/or units is accomplished by labels, thus minimizing errorsduring configuration modifications. Status of control functions (PID,totalizer, latch, loop-mode etc.) is retained during configuration ifbasic configuration topology is not changed.

[0233] Complete Integration

[0234] The new concept of incorporating all control, input/outputhandling and communication on a single-board control module 40significantly increases system reliability. Both general purpose andoptimization functions are included. This new integration capabilityopens up a large sphere of plant units to advanced automation.

[0235] The following pages describe some of the unique pre-programmedfunctions contained in the unit controller 10 . . .

[0236] Look-Ahead Constraint Optimization Function

[0237] The function is used with the PID control function to optimizethe process setpoint. Optimization is achieved by increasing ordecreasing the setpoint at a defined rate. The setpoint up or downramping is conditional and depends on the status of the definedconditions. The conditions may be discrete or Boolean expressions orcomparison (<,==,>). The condition Booleans are, as a rule, tied to ananalog variable that is in some manner an indicator of the processcapacity or throughput.

[0238] For example, product is transferred to a mill where it is groundand only the finely ground portion of the product is removed. Theproduct volume in the mill may be used to increase or decrease the millfeed setpoint so that the mill load will be kept at the optimum leveland will not be allowed to be depleted or exceed the maximum allowable.In this case the millfeed setpoint will be tied to the RAMPUP=(PRODUCTVOLUME<X) and RAMPDN=(PRODUCT VOLUME>Y) parameters, where X and Y arethe minimum and maximum product volume allowable.

[0239] Another example would be the setpoint positioning in acentrifugal/axial compressor anti-surge control application. Thesetpoint is ramped toward the compressor operating point to ensure fastresponse in cases where the compressor operating point is in the highflow region but starts to decrease rapidly. The predictive action isconfigured to decay automatically while the compressor operating pointis moving at a normal rate toward the surge control line.

[0240] The function requires definition of four parameters.

[0241] Parameter 1—Condition: This parameter defines the Booleanvariable (discrete or expression) which enables or disables thefunction.

[0242] Parameter 2—Rampup: This is the Boolean variable which when true(1) causes the function to ramp up (increase) the loop setpoint.Setpoint ramping is maintained while the Rampup Boolean remains true.

[0243] Parameter 3—Rampdn: This is the boolean variable which when true(1) causes the function to ramp down (decrease) the loop setpoint.Setpoint ramping is maintained while the Rampdn Boolean remains true.The Rampdn parameter may be a discrete controlled by some processvariable or event or may be a Boolean expression or comparison (==,>=).

[0244] Parameter 4—Rate: This is a constant and defines the rate atwhich the loop setpoint will be ramped up or down. This parameter doesnot alter or affect in any way the setpoint ramp rate entered in theloop auxiliary data.

[0245] Dynamic Look-Up Table

[0246] The function is a two-dimension dynamic lookup table, whichaccepts a number of values as input, and outputs an equal number ofvalues, one for each input value. When the input is between two definedvalues the output is linearly interpolated. The input values areconsidered to be the X-axis and the output values the Y-axis.

[0247] The number of X and Y values may be limited, such as twenty, tenfor the X-axis and ten for the Y-axis and, to each X-axis value theremust be one and only one corresponding Y-axis value.

[0248] Alternatively the X-axis and the Y-axis values may be written intagged arrays. In this case the number of elements in each array can bemore than ten and the arrays must be defined in loop steps preceding thestep in which the function is configured.

[0249] Entries in arrays can be either constants or tags of variablesand for every X-axis value there preferably should be only onecorresponding Y-axis value.

[0250] The function requires definition of two parameters and the X andY values:

[0251] Parameter 1—Reference Tag: This defines the tag of the analoginput or internal (virtual) analog, which is the independent variable,the input to the function.

[0252] Parameter 2—Number of Table Entries: Defines the number of X-axisvalues that will be entered. During parameter definition, the X valueand the Y values are entered.

[0253] Oscillation Detection and Control

[0254] Signals from the flow/pressure/current transmitter in conjunctionwith oscillation the detection function can be used as input to theincipient control PID of a centrifugal or axial compressor. The outputof the incipient PID controller acts as override to the main anti-surgePID controller via a selector function.

[0255] In typical compressor control applications, incipient surgecontrol is added as a backup algorithm to the primary and fallbackanti-surge control algorithm. This increases the reliability of theanti-surge control system. Incipient surge could be used as theprimary/main anti-surge control algorithm, however, since the conceptdepends on high-speed, clean process measurement (flow, pressure,current) that involves high-speed transmitters and special installationconsideration, normally it is not recommended that incipient surgecontrol by itself (alone), be utilized for compressor anti-surgecontrol.

[0256] Incipient Surge Phenomena

[0257] Before the compressor reaches the actual surge point, rapidoscillations occur. Compressor field tests have confirmed thisphenomenon as an indication of impending surge. However, since thissurge phenomenon has special characteristics for each compressor, it is(in practice) not always easily measured and special signalcharacterization/filtering is required.

[0258] An analog conditioning module or the high-speed digital algorithmis required to collate pre-surge oscillations into useful data forcontrol purposes.

[0259] To prevent high frequency noise from interfering with thepre-surge detector, a special high frequency filter is used. The effectsof low frequency variations caused by normal process changes and/oroperator setpoint changes are isolated by a low frequency, cutoff filteradjustable from 0.2 to 12 HZ (5 HZ default).

[0260] A high speed transmitter must be used when implementing incipientsurge control techniques.

[0261] The incipient control backup concept has been successfully usedfor compressor surge tests for many years. However, the high speedimplementation in a digital controller is new.

[0262] Expression Vector

[0263] The grammatical production,

[0264] primary-->“{” args “}” “[” expr “]” is an expression vector. Itmay be an l-value or r-value and even permits mixed data types among thearguments.

[0265] 1. Semantics.

[0266] The expression (expr) is evaluated and indexes the list ofarguments (args) which begin with argument zero. If the index is toolarge or small (ie negative), the first argument is used. Exactly one ofthe arguments is used during the current scan. Only the selectedargument is evaluated. (Contrast with expression functions argumentswhich are always evaluated.) If all of the arguments are l-values, theexpression vector may be used on the left of an assignment.

[0267] 2. Examples of expression vectors.

[0268] Reset DAD VD101 in states 3 and 4:

[0269] { , , , VD101, VD101}[STATE]=0;

[0270] { , , , VD101=0, VD101=0}[STATE];

[0271] Set virtual analog to one of several values:

[0272] VA101={VA106, 17, VA103+5.7}[I];

[0273] Move some things around:

[0274] {A, A[K], VD101, ISW10, (I=0, K=K+1, K=0?K>10, VAI101)}

[0275] [I=I+1]={VA101, VD201}[J=0 ? J=J+1>=2, J]

[0276] Single-Board Fault-Tolerance Through Redundancy (Including I/O)

[0277] The unit controller is designed from the beginning to offersafeguards against unit and component failures, and allows failures tobe located and repaired quickly.

[0278] Fault tolerance in the controller is achieved through redundantcontrol board architecture. The redundancy employs two 40′, 40″ parallelcontrol boards; each containing its processor, memory, communicationsand I/O circuitry. Thus, redundancy is provided throughout—from theinput/output circuitry through the processor/memory and thecommunication.

[0279] Setting up applications is simplified with the unit controller,because the duplicated system operates as a single package from theuser's perspective. The user terminates transmitters and actuators at asingle wiring terminal and configures the controller with one set ofapplication functions. The controller manages the rest.

[0280] Extensive on-line diagnostics on each control board detect andreport operational faults. All diagnostic information is stored insystem variables. If a failure is detected, an alarm is activated toinform the operator and a backup board is automatically enabled. Thearchitecture allows for a simple plug-in control board exchange.Reconfiguration is automatic and control is restored to normal withinseconds—without a process upset.

[0281] Uninterrupted communication and control is provided byautomatically transferring all configuration and communications to both,the primary and backup control module. There is a complete transparencyin the reserve control module. Apart from notification of failure, thereis no change in the operator interface. The user has no installation orcable connection requirements. Backplane data links enable the modulesto copy the I/O and control configuration and to assume virtuallyimmediately the I/O and control functions in case of a malfunction.

[0282] Redundant Ethernet Media

[0283] Each controller board 40 incorporates two Ethernet Modems 60 tooffer redundant media support for fault-tolerant network operation. TheEthernet carrier has two independent connections 60 and the networkhubs/switches can include self-healing redundancy.

[0284] Redundant Line Power Supply

[0285] Since the loss of power could bring down the control modules, theexternal 26VDC power supply is normally provided in a redundantconfiguration.

[0286] Both power supplies operate continuously. On the controller, both26 VDC sources are diode-isolated to prevent the failure of one fromaffecting the other.

[0287] Fault Tolerant Control Configuration

[0288] High system reliability is not only a function of hardwareredundancy; fallback control strategies are equally important. Thecontrollers' functions and configuration architecture is structured toprovide safe strategy fallback in the event the certain transmitter oranalyzer malfunctions

[0289] Anti-Surge Engineering Tool

[0290] The compressor anti-surge control engineering is automated withthe anti-surge engineering software package—an intuitive vehicle forengineers to eliminate complex anti-surge selection and calculationprocedures. This configuration tool does not change the basic approachto compressor anti-surge control (algorithms like Hp,sim, simplifiedpolytropic head, versus h, differential pressure across an orifice platehave been in use for over 20 years), but it provides a new innovativecomponent that makes sophisticated control selection simple andminimizes errors.

[0291] Configuration Procedures

[0292] The configuration program contains features to enter compressoranti-surge data (from either the performance curve or from actual surgetests), select the anti-surge algorithm and enter auxiliary data (suchas transmitter ranges, bias, etc.). The software tool is also structuredto optimize entered process information so that the multifaceted datacan be turned into anti-surge control strategy selection automatically.

[0293] The configuration utility consists of several windows and pop-uptemplates. Help instructions/windows guide the user through theconfiguration procedures to the extent that the requirement for aconfiguration manual is practically eliminated. The software tool isprovided in a Microsoft Windows based format. It includes the familiarFile—New, Open, Save and Print features. The data entry/display isorganized in seven pages: Anti-Surge Scheme Selection/Display and BaseData Entry (FIG. 18), Compressor Performance Curve (FIG. 20), Algorithmand Application Display (FIG. 21), Polytropic Head versus SquaredVolumetric Flow Table (FIG. 22), Anti-Surge Parameter Tables (FIG. 23),Flow Calculation Help (FIG. 24), Polynomial Display (FIG. 25).

[0294] Anti-Surge (A/S) Adaptation

[0295] The Anti-Surge control is adapted to the specific application byentering the appropriate parameters on the Process/Instrument Data Entryscreens as follows:

[0296] Select Compressor Type (FIG. 16): Depress either Single-Stage orMulti-Stage. For Multi-Stage machines choose the number of stages (clickon graphic—FIG. 19) and select the Side Stream directions.

[0297] Choose the Anti-Surge Strategy Definition Method (there are twoways to select the strategy in the preferred embodiment): Selection withAnti-Surge Strategy Help/Verification pop-up and direct algorithmselection.

[0298] Verify that the transmitter configuration (auto selected by‘suggested’ or picked anti-surge algorithm) meets the applicationrequirement. Left click to delete/add transmitters. Right click to entertransmitter data.

[0299] Enter Compressor SLL Base Conditions and Flow ElementCalibration: Choose Units (English-Metric) and Speed (fixed or variable)options and enter all data fields (mandatory entries for specificanti-surge algorithm are indicated by *). Then select Flow ElementCalibration and enter or calculate the basic flow coefficient (A).

[0300] Select and Scale FLOW and HEAD (FIG. 20) to match units tocompressor manufacturer's performance curve (for each Stage onMulti-Stage Machines). If the look-up table is used to enter field surgetest data, click on SLL Field Test (the correlating Flow-Head units areautomatically selected).

[0301] Enter Look-Up Table Points (double click on matrix) to establishthe Surge Limit Line (SLL). For constant speed machines, enter twopoints (or several points, for varying MW) on the Look-Up Table. Forvariable speed machines enter points at several speed intervals (the RPMfigure can be entered with each selected SLL coordinate). Use compressorperformance curve from compressor manufacturer or enter points obtainedfrom actual surge test data. Enter SCL Bias (Surge Control Line Bias).

[0302] Guide Vane Angle (G) Entry: For compressors with inlet guidevanes, guide vane position correction is accomplished via a pop-upLook-Up table. Enter the Base Flow at 100% open vane position and thenenter the vane positions with the corresponding flow.

[0303] Data Entry Procedures

[0304] Compressor Type Selection—FIG. 16

[0305] Single-Stage or Multi-Stage

[0306] Anti-Surge Strategy Definition—FIG. 17

[0307] Pull down the Anti-Surge Algorithm Selection Help display andclick on applicable conditions (gas composition, compression ratio,etc.) in the dialog box. Depress “Suggest” for selection of therecommended anti-surge algorithm.

[0308] Direct algorithm selection. Click on the arrow below “Suggest”,pull down the Anti-Surge Strategy menu (S1, S2, S5, etc.) and select thestrategy.

[0309] Transmitter pick: Verify that the transmitter configuration meetsthe application requirement. Left-click to add/delete transmitters(re-verify anti-surge selection).

[0310] Enter Transmitter data: Right-click to enter transmitter ranges.

[0311] Base Condition—FIG. 18

[0312] Units of Measurement are either English or Metric.

[0313] Speed Selection—Fixed or Variable.

[0314] When entering the process variable data, the M/C Tool user has tobe concerned that sufficient data is entered to allow for adaptation ofthe Performance Map to the selected Anti-Surge Algorithm.

[0315] Flow Element Calibration

[0316] If A (the basic flow coefficient) cannot be obtained from flowelement calibration data, click the “Flow Element Calibration” button.

[0317] Data (Qmax, hmax, Pc, Tc, Zc) must correspond to flow transmitterconditions_(at location of flow transmitter, compressor suction ordischarge).

[0318] Parameter Selection—FIG. 17

[0319] Gas Composition: If molecular weight changes more than tenpercent, select Varying.

[0320] Compression Ratio: Verify Pd/Ps (absolute pressure) andenter >1.5 or <1.5

[0321] Suction Pressure: If suction pressure changes more than tenpercent select Varying. Otherwise, select Constant. For air compressors,select ATM.

[0322] Flow Element Position: Verify and select flow element position.If possible choose suction position.

[0323] Guide Vanes: For compressor with inlet guide vanes, select Yesfor Guide Vanes. Enter G-V Correction on the Performance Curve.

[0324] Anti Surge Algorithm “Suggest”—FIG. 17

[0325] Clicking on Suggest will display the recommended anti-surgealgorithm.

[0326] For direct anti-surge algorithm selection, click on the arrowbelow Suggest and select the desired strategy.

[0327] If transmitters have been pre-defined and one or moretransmitters are missing, they should preferably be automatically addedto the P&ID diagram. Note, however, that if there is a pre-definedselection showing more transmitters than required by the recommendedanti-surge strategy, the P&ID diagram will preferably not be updated.

[0328] SLL Base Conditions Entry—FIG. 18

[0329] Select Units of Measurement: English or Metric

[0330] Enter Speed Selection: Fixed or Variable speed compressor driver(Motor or Turbine)

[0331] Enter Process Data: Suction pressure (Ps), suction temperature(Ts), suction gas compressibility (Zs), discharge pressure (Pd),discharge Temperature (Td), discharge gas compressibility (Zd),molecular weight (MW), specific heat ratio (k), and polytropicefficiency (Pe).

[0332] Fallback Values: Predetermined values will be assumed if gascompressibility factors (Zs, Zd) are not entered

[0333] Back Calculation: If certain values are not available, theConfigurator should preferably attempt to back calculate the parameters.For example; if no entry is made for suction pressure, the dischargepressure should preferably be used to back calculate the suctionpressure.

[0334] Compressor Type Selection—FIG. 19

[0335] Multi-Stage (as shown in display)

[0336] Stage Configuration—FIG. 19

[0337] Select number of compressor stages by clicking on the compressorstages in the graphic

[0338] Choose each side stream flow direction by clicking on the sidestream Arrow in the graphic

[0339] Phantom Orifice—Weight Flow Calculation Tool—FIG. 19

[0340] Double click the Phantom Orifice at the interstages to obtainweight flow values and orifice values.

[0341] Except that multiple stages are displayed, Anti-Surge AlgorithmSelection Help, Base Conditions and Flow Element Calibration are similarto single stage displays.

[0342] Head Definition—FIG. 20

[0343] Select Head Units to match Performance Curve: Polytropic Head,Adiabatic Head, Discharge Pressure

[0344] Flow Definition—FIG. 20

[0345] Select Flow Units to match Performance Curve (at compressor stg.inlet): Volumetric Flow, Weight Flow

[0346] SLL Bias—FIG. 20

[0347] SLL Bias (safety margin) is entered as percentage of Flow (limitbetween 3 and 10%)

[0348] SLL Field Test—FIG. 20

[0349] Head and Flow Engineering Units (Head=Hp,sim′-Disch. Pressure,Flow=orifice ‘h’) are automatically selected in accordance with thechosen anti-surge algorithm if data is obtained from field tests.

[0350] Surge Limit Line (SLL) Data Entry—FIG. 20

[0351] Double-click on matrix

[0352] Use compressor performance curve from compressor manufacturer orenter points obtained from actual surge test data.

[0353] Enter Flow and Head data for at least two points. For variablespeed machines enter points at several speed intervals (the RPM figurecan be entered with each selected SLL coordinate).

[0354] If only three Flow/Head data points are entered for a variablespeed machine check (click on) the quadratic interpolation.

[0355] Anti-Surge Algorithm Display—FIG. 21

[0356] Formula of preconfigured anti-surge algorithm is displayed forthe selected compressor stage

[0357] If the displayed algorithm is not appropriate, return toAnti-Surge Algorithm Selection Help, and choose the desired algorithm.

[0358] Application—FIG. 21

[0359] Each anti-surge algorithm includes a short Applicationdescription. The user is preferably advised to read it carefully andconsider his entries in the Anti-Surge Strategy Help/Verification dialogbox.

[0360] Documentation (Print)—All M/C Tool displays

[0361] The simplest way to print is to click on the Print icon on theapplication's toolbar. The toolbar approach bypasses the dialog box andsends the entire M/C Tool document to the current default printer.

[0362] If a specific M/C Tool display is to be printed, pull down thefile menu and choose Print.

[0363] When Head-Flow data is entered from the curves of the machinemanufacturer, the Compressor Performance Curve is converted toPolytropic Head (Hp) versus Squared Volumetric Flow (Qs)².

[0364] If the Head-Flow data is obtained from field surge tests(Hp,sim-Pressure Ratio-Differential Pressure), the parameters aredisplayed directly on the Anti-Surge Table. The Hp vs Q² table is leftblank if the Field Test button is checked.

[0365] The specific method used to calculate the anti-surge criterion‘hSCL’ depends on the particular application. However, all calculationsare based on the ratio of the polytropic head (Hp) to the volumetricflow squared in the compressor's suction.

[0366] When the compressor is provided with a variable speed driver(turbine) and/or inlet guide vanes, the surge limit line (SLL) will be afunction of both RPM and G-V position. Experience indicates that thesefunctionalities are relatively independent, therefore separate RPM andG-V function tables are used to normalize the SLL.

[0367] Since the true polytropic head or volumetric flow cannot bemeasured directly, their ratio is calculated as a function of reducedpolytropic head (Hp,sim) versus suction orifice differential (hs).

[0368] Three concepts are used to compute the reduced polytropic head .. .

[0369] ΔP vs h algorithm: Assumption that the compression ratio term[(Pd/Ps)^(m′)−1]/m′ is linear and the polytropic exponent (m′) is aconstant. Maximum reduced Hp,sim′.

[0370] Hp,siα vs h algorithm: Assumes that the polytropic exponent (m′)is a constant (α) for the gas compositions. m′=(k−1/k*Pe)=α.

[0371] Hp,sim′ vs h algorithm: The polytropic exponent is derived fromthe thermodynamic relationship, m′=[log(Td/Ts)]÷[log(Pd/Ps)]. Thislogarithmic relationship is substituted for the specific heat valuebased term in defining the equation for the simplified polytropic head.Hp,sim′ vs h is used for applications with widely varying gascomposition.

[0372] The flow conversion tables (FIG. 24) are provided for users'convenience. Data source can be either from the Performance Curve orfrom manual entry.

[0373] Calculations

[0374] Orifice ‘h’

[0375] Actual Volumetric Flow

[0376] Weight Flow

[0377] Standard Volumetric Flow

[0378] The polynomial conversion (FIG. 25) of the anti-surge parameterdisplay table is utilized if a polynomial function is used instead of alook-up table in the anti-surge controller. The conversion backpreferably calculates the curve based on Simplified Flow×Ex06 (valuesbefore anti-surge algorithm constant and suction pressure compensation).Because many varying and difference embodiments may be made within thescope of the invention concept taught herein which may involve manymodifications in the embodiments herein detailed in accordance with thedescriptive requirements of the law, it is to be understood that thedetails herein are to be interpreted as illustrative and not in alimiting sense.

What is claimed:
 1. A multi-loop, industrial unit controller,comprising: a single, autonomous controller module, having— an integralinput/output section, including inputs and outputs, said section beingwithin said module; a function library stored in said module, saidfunctions to manipulate the values of said inputs and outputs; aconfiguration system stored in said module, said configuration system tointerconnect said inputs and outputs and said functions; and ahuman-machine interface connected to said module, including a displaymechanism to request and display values of said inputs, said interfacehaving a small form factor display.
 2. The controller of claim 1,wherein said interface is embedded in said module.
 3. The controller ofclaim 2, wherein said human-machine interfaces includes a palm-typecomputer.
 4. The controller of claim 1, wherein said module isredundant.
 5. The controller of claim 4, wherein said module hasparallel single board redundancy.
 6. The controller of claim 5, whereinthere is control redundancy on said single board redundancy.
 7. Thecontroller of claim 1, wherein there is further included a communicatorconnected to said module.
 8. The controller of claim 7, wherein saidcommunicator has an Ethernet interface.
 9. The controller of claim 7,wherein said communicator has an RS-232/485 interface.
 10. Thecontroller of claim 7, wherein said communicator has a web server. 11.The controller of claim 10, wherein said communicator includes Internettools and wireless networking.
 12. The controller of claim 1, whereinthere is included a front panel, said human-machine interface mounted insaid front panel.
 13. The controller of claim 1, wherein saidhuman-machine interface has a touch screen.
 14. The controller of claim1, wherein said human-machine interface has a color liquid crystaldisplay.
 15. The controller of claim 1, wherein said input/outputsection includes a one millisecond time stamping.
 16. The controller ofclaim 1, wherein said display mechanism has a Windows-based operatingsystem.
 17. The controller of claim 16, wherein said display mechanismincludes a palm-type computer having a Windows-based operating system.18. The controller of claim 1, wherein said human-machine interfaceincludes graphic capability.
 19. The controller of claim 18, whereinsaid graphic capability includes drawing tools.
 20. The controller ofclaim 19, wherein said drawing tools include animation tools.
 21. Thecontroller of claim 1, wherein said function library includes a dynamictwo-dimensional look-up table that provides variable-speed compensationfor centrifugal/axial compressor surge estimation computation.
 22. Thecontroller of claim 21, wherein said table includes automated anti-surgealgorithm selection.